package com.cxf.windex.entity;

import com.vdurmont.emoji.EmojiParser;
import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.*;

@Table(name = "cxf_pay_info")
public class CxfPayInfo {

  @Id
  private Integer id;

  /**
   * 状态 1支付 2已经退款
   */
  private Integer status;

  /**
   * 订单ID
   */
  @Column(name = "pay_id")
  private String payId;

  /**
   * 添加时间
   */
  private Date addtime;

  /**
   * 退款时间
   */
  private Date repaytime;

  /**
   * 支付金额
   */
  @Column(name = "pay_money")
  private BigDecimal payMoney;

  /**
   * 退款金额
   */
  @Column(name = "repay_money")
  private BigDecimal repayMoney;

  /**
   * 原价
   */
  @Column(name = "total_money")
  private BigDecimal totalMoney;

  /**
   * 支付码
   */
  @Column(name = "pay_code")
  private String payCode;

  /**
   * 支付类型
   */
  @Column(name = "pay_name")
  private String payName;

  /**
   * 用户ID
   */
  private String userid;

  /**
   * 用户昵称
   */
  private String name;

  /**
   * 备注
   */
  private String notes;

  @Transient
  private String address;
  @Transient
  private String token;

  /**
   * @return id
   */
  public Integer getId() {
    return id;
  }

  /**
   * @param id
   */
  public void setId(Integer id) {
    this.id = id;
  }

  /**
   * 获取状态 1支付 2已经退款
   *
   * @return status - 状态 1支付 2已经退款
   */
  public Integer getStatus() {
    return status;
  }

  /**
   * 设置状态 1支付 2已经退款
   *
   * @param status 状态 1支付 2已经退款
   */
  public void setStatus(Integer status) {
    this.status = status;
  }

  /**
   * 获取订单ID
   *
   * @return pay_id - 订单ID
   */
  public String getPayId() {
    return payId;
  }

  /**
   * 设置订单ID
   *
   * @param payId 订单ID
   */
  public void setPayId(String payId) {
    this.payId = payId;
  }

  /**
   * 获取添加时间
   *
   * @return addtime - 添加时间
   */
  public Date getAddtime() {
    return addtime;
  }

  /**
   * 设置添加时间
   *
   * @param addtime 添加时间
   */
  public void setAddtime(Date addtime) {
    this.addtime = addtime;
  }

  /**
   * 获取退款时间
   *
   * @return repaytime - 退款时间
   */
  public Date getRepaytime() {
    return repaytime;
  }

  /**
   * 设置退款时间
   *
   * @param repaytime 退款时间
   */
  public void setRepaytime(Date repaytime) {
    this.repaytime = repaytime;
  }

  /**
   * 获取支付金额
   *
   * @return pay_money - 支付金额
   */
  public BigDecimal getPayMoney() {
    return payMoney;
  }

  /**
   * 设置支付金额
   *
   * @param payMoney 支付金额
   */
  public void setPayMoney(BigDecimal payMoney) {
    this.payMoney = payMoney;
  }

  /**
   * 获取退款金额
   *
   * @return repay_money - 退款金额
   */
  public BigDecimal getRepayMoney() {
    return repayMoney;
  }

  /**
   * 设置退款金额
   *
   * @param repayMoney 退款金额
   */
  public void setRepayMoney(BigDecimal repayMoney) {
    this.repayMoney = repayMoney;
  }

  /**
   * 获取原价
   *
   * @return total_money - 原价
   */
  public BigDecimal getTotalMoney() {
    return totalMoney;
  }

  /**
   * 设置原价
   *
   * @param totalMoney 原价
   */
  public void setTotalMoney(BigDecimal totalMoney) {
    this.totalMoney = totalMoney;
  }

  /**
   * 获取支付码
   *
   * @return pay_code - 支付码
   */
  public String getPayCode() {
    return payCode;
  }

  /**
   * 设置支付码
   *
   * @param payCode 支付码
   */
  public void setPayCode(String payCode) {
    this.payCode = payCode;
  }

  /**
   * 获取支付类型
   *
   * @return pay_name - 支付类型
   */
  public String getPayName() {
    return payName;
  }

  /**
   * 设置支付类型
   *
   * @param payName 支付类型
   */
  public void setPayName(String payName) {
    this.payName = payName;
  }

  /**
   * 获取用户ID
   *
   * @return userid - 用户ID
   */
  public String getUserid() {
    return userid;
  }

  /**
   * 设置用户ID
   *
   * @param userid 用户ID
   */
  public void setUserid(String userid) {
    this.userid = userid;
  }

  /**
   * 获取用户昵称
   *
   * @return name - 用户昵称
   */
  public String getName() {
    return name;
  }

  /**
   * 设置用户昵称
   *
   * @param name 用户昵称
   */
  public void setName(String name) {
    name = EmojiParser.parseToAliases(name);
    this.name = EmojiParser.parseToUnicode(name);
  }

  /**
   * 获取备注
   *
   * @return notes - 备注
   */
  public String getNotes() {
    return notes;
  }

  /**
   * 设置备注
   *
   * @param notes 备注
   */
  public void setNotes(String notes) {
    this.notes = notes;
  }

  public String getAddress() {
    return address;
  }

  public void setAddress(String address) {
    this.address = address;
  }

  public String getToken() {
    return token;
  }

  public void setToken(String token) {
    this.token = token;
  }
}